﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Simple.Services.System.MorningCheck.Models
{
    public class DevicePlayModelcs
    {
        public string[] device_codes { get; set; }

        public string text { get; set; }

        /// <summary>
        /// 发⾳⼈  xiaoyan (⼩燕，⼥声)    xiaofeng(⼩峰，男声)
        /// </summary>
        public string vcn { get; set; } = "xiaoyan";

        /// <summary>
        /// 发⾳速度  合成⾳频对应的语速，取值范围：[0,100]，数值越⼤语速越快。  默认值：50
        /// </summary>
        public int speed { get; set; } = 50;

        /// <summary>
        /// ⾳量  合成⾳频的⾳量，取值范围：[0,100]，数值越⼤⾳量越⼤。默认值：50
        /// </summary>
        public int volume { get; set; } = 50;

        /// <summary>
        /// 数字发⾳
        /// 合成⾳频数字发⾳，⽀持参数，
        ///0 数值优先,
        ///1 完全数值,
        ///2 完全字符串，
        ///3 字符串优先，
        ///默认值：2
        /// </summary>
        public string rdn { get; set; } = "2";

        /// <summary>
        /// 数字“1” 的中⽂发⾳
        /// ⽀持参数：
        ///0：表示发⾳为yao
        ///1：表示发⾳为yi
        ///默认值：0
        /// </summary>
        public string rcn { get; set; } = "1";

        /// <summary>
        /// 英⽂发⾳ 0：⾃动识别英语单词； 1：逐个字⺟发⾳
        /// </summary>
        public int reg { get; set; } = 0;

        /// <summary>
        /// 同步请求 true: 同步模式，语⾳播放完毕后再响应； false：即时响应（不等待播放完成）
        /// </summary>
        public bool sync { get; set; } = true;

        /// <summary>
        /// 添加到队列 true: 队列模式，如果当前有语⾳在播放，则加到队列排队播放
        /// </summary>
        public bool queue { get; set; } = true;

        /// <summary>
        /// 在实际内容前播放提示⾳乐
        /// </summary>
        public bool prompt { get; set; } = false;

        //public DevicePlayModelcsLoop loop { get; set; }

    }

    public class DevicePlayModelcsLoop
    {
        /// <summary>
        /// 循环（重复）播放时⻓（秒）
        /// </summary>
        public int duration { get; set; }

        /// <summary>
        /// 循环（重复）播放次数（次）
        /// </summary>
        public int times { get; set; }

        /// <summary>
        ///  循环（重复）播放中的间歇时间（秒）
        /// </summary>
        public int gap { get; set; }
    }
}
